package gz.metro.datasync.entity.form;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @author Feily
 * @功能描述 组织表单类
 * @创建时间 2018-03-29
 */
@ApiModel(value = "OrgDataForm",description = "组织表单类")
public class OrgDataForm extends FormBase{

	/**
	 * 组织ID
	 */
	@ApiModelProperty("组织ID")
	private String orgId;
	/**
	 * 父组织ID
	 */
	@ApiModelProperty("父组织ID")
	private String parentOrgId;
	/**
	 * 源组织ID
	 */
	@ApiModelProperty("源组织ID")
	private String sourceOrgId;
	/**
	 * 源组织父ID
	 */
	@ApiModelProperty("源组织父ID")
	private String sourceParentOrgId;
	/**
	 * 数据源类型：hr-人力系统，web-网站，import-导入，interface-接口
	 */
	@ApiModelProperty("数据源类型：hr-人力系统，web-网站，import-导入，interface-接口")
	private String sourceType;
	/**
	 * 组织类别：inside-内部，outside-外部，virtule-虚拟
	 */
	@ApiModelProperty("组织类别：inside-内部，outside-外部，virtule-虚拟")
	private String orgCategory;
	/**
	 * 组织类型
	 */
	@ApiModelProperty("组织类型")
	private String orgType;
	/**
	 * 组织名称
	 */
	@ApiModelProperty("组织名称")
	private String orgName;
	/**
	 * 组织全名称
	 */
	@ApiModelProperty("组织全名称")
	private String orgFullName;
	/**
	 * 组织编码
	 */
	@ApiModelProperty("组织编码")
	private String orgCode;
	/**
	 * 位置范围：中旅
	 */
	@ApiModelProperty("位置范围：中旅")
	private String region;
	/**
	 * 街道
	 */
	@ApiModelProperty("街道")
	private String street;
	/**
	 * 邮编
	 */
	@ApiModelProperty("邮编")
	private String post;
	/**
	 * WBS编码
	 */
	@ApiModelProperty("WBS编码")
	private String wbsCode;
	/**
	 * WBS层级
	 */
	@ApiModelProperty("WBS层级")
	private Integer wbsLevel;
	/**
	 * 排序
	 */
	@ApiModelProperty("排序")
	private Integer orderNum;
	/**
	 * 状态：disabled-禁用，enabled-启用
	 */
	@ApiModelProperty("状态：disabled-禁用，enabled-启用")
	private String status;
	/**
	 * 是否删除
	 */
	@ApiModelProperty("是否删除")
	private Boolean isDelete;
	/**
	 * 备注
	 */
	@ApiModelProperty("备注")
	private String remark;
	/**
	 * 创建时间
	 */
	@ApiModelProperty("创建时间")
	private Date createTime;
	/**
	 * 创建用户ID
	 */
	@ApiModelProperty("创建用户ID")
	private String createUserId;
	/**
	 * 修改时间
	 */
	@ApiModelProperty("修改时间")
	private Date updateTime;
	/**
	 * 修改用户ID
	 */
	@ApiModelProperty("修改用户ID")
	private String updateUserId;
	/**
	 * 扩展字段1
	 */
	@ApiModelProperty("扩展字段1")
	private String column1;
	/**
	 * 扩展字段2
	 */
	@ApiModelProperty("扩展字段2")
	private String column2;
	/**
	 * 扩展字段3
	 */
	@ApiModelProperty("扩展字段3")
	private String column3;
	/**
	 * 扩展字段4
	 */
	@ApiModelProperty("扩展字段4")
	private String column4;
	/**
	 * 扩展字段5
	 */
	@ApiModelProperty("扩展字段5")
	private String column5;


	/**
	 * 获取组织ID
	 * @return 组织ID
	 */
	public String getOrgId() {
		return orgId;
	}
	
	/**
	 * 设置组织ID
	 * @param orgId 组织ID
	 */
	public void setOrgId(String orgId) {
		this.orgId = orgId;
	}

	/**
	 * 获取父组织ID
	 * @return 父组织ID
	 */
	public String getParentOrgId() {
		return parentOrgId;
	}
	
	/**
	 * 设置父组织ID
	 * @param parentOrgId 父组织ID
	 */
	public void setParentOrgId(String parentOrgId) {
		this.parentOrgId = parentOrgId;
	}

	/**
	 * 获取源组织ID
	 * @return 源组织ID
	 */
	public String getSourceOrgId() {
		return sourceOrgId;
	}
	
	/**
	 * 设置源组织ID
	 * @param sourceOrgId 源组织ID
	 */
	public void setSourceOrgId(String sourceOrgId) {
		this.sourceOrgId = sourceOrgId;
	}

	/**
	 * 获取源组织父ID
	 * @return 源组织父ID
	 */
	public String getSourceParentOrgId() {
		return sourceParentOrgId;
	}
	
	/**
	 * 设置源组织父ID
	 * @param sourceParentOrgId 源组织父ID
	 */
	public void setSourceParentOrgId(String sourceParentOrgId) {
		this.sourceParentOrgId = sourceParentOrgId;
	}

	public String getSourceType() {
		return sourceType;
	}

	public void setSourceType(String sourceType) {
		this.sourceType = sourceType;
	}

	public String getOrgCategory() {
		return orgCategory;
	}

	public void setOrgCategory(String orgCategory) {
		this.orgCategory = orgCategory;
	}
	
	/**
	 * 获取组织类型
	 * @return 组织类型
	 */
	public String getOrgType() {
		return orgType;
	}
	
	/**
	 * 设置组织类型
	 * @param orgType 组织类型
	 */
	public void setOrgType(String orgType) {
		this.orgType = orgType;
	}

	/**
	 * 获取组织名称
	 * @return 组织名称
	 */
	public String getOrgName() {
		return orgName;
	}
	
	/**
	 * 设置组织名称
	 * @param orgName 组织名称
	 */
	public void setOrgName(String orgName) {
		this.orgName = orgName;
	}

	/**
	 * 获取组织全名称
	 * @return 组织全名称
	 */
	public String getOrgFullName() {
		return orgFullName;
	}
	
	/**
	 * 设置组织全名称
	 * @param orgFullName 组织全名称
	 */
	public void setOrgFullName(String orgFullName) {
		this.orgFullName = orgFullName;
	}

	public String getOrgCode() {
		return orgCode;
	}

	public void setOrgCode(String orgCode) {
		this.orgCode = orgCode;
	}
	
	/**
	 * 获取位置范围：中旅
	 * @return 位置范围：中旅
	 */
	public String getRegion() {
		return region;
	}
	
	/**
	 * 设置位置范围：中旅
	 * @param region 位置范围：中旅
	 */
	public void setRegion(String region) {
		this.region = region;
	}

	/**
	 * 获取街道
	 * @return 街道
	 */
	public String getStreet() {
		return street;
	}
	
	/**
	 * 设置街道
	 * @param street 街道
	 */
	public void setStreet(String street) {
		this.street = street;
	}

	/**
	 * 获取邮编
	 * @return 邮编
	 */
	public String getPost() {
		return post;
	}
	
	/**
	 * 设置邮编
	 * @param post 邮编
	 */
	public void setPost(String post) {
		this.post = post;
	}

	/**
	 * 获取WBS编码
	 * @return WBS编码
	 */
	public String getWbsCode() {
		return wbsCode;
	}
	
	/**
	 * 设置WBS编码
	 * @param wbsCode WBS编码
	 */
	public void setWbsCode(String wbsCode) {
		this.wbsCode = wbsCode;
	}

	/**
	 * 获取WBS层级
	 * @return WBS层级
	 */
	public Integer getWbsLevel() {
		return wbsLevel;
	}
	
	/**
	 * 设置WBS层级
	 * @param wbsLevel WBS层级
	 */
	public void setWbsLevel(Integer wbsLevel) {
		this.wbsLevel = wbsLevel;
	}

	/**
	 * 获取排序
	 * @return 排序
	 */
	public Integer getOrderNum() {
		return orderNum;
	}
	
	/**
	 * 设置排序
	 * @param orderNum 排序
	 */
	public void setOrderNum(Integer orderNum) {
		this.orderNum = orderNum;
	}

	/**
	 * 获取状态：disabled-禁用，enabled-启用
	 * @return 状态：disabled-禁用，enabled-启用
	 */
	public String getStatus() {
		return status;
	}
	
	/**
	 * 设置状态：disabled-禁用，enabled-启用
	 * @param status 状态：disabled-禁用，enabled-启用
	 */
	public void setStatus(String status) {
		this.status = status;
	}

	/**
	 * 获取是否删除
	 * @return 是否删除
	 */
	public Boolean getIsDelete() {
		return isDelete;
	}
	
	/**
	 * 设置是否删除
	 * @param isDelete 是否删除
	 */
	public void setIsDelete(Boolean isDelete) {
		this.isDelete = isDelete;
	}

	/**
	 * 获取备注
	 * @return 备注
	 */
	public String getRemark() {
		return remark;
	}
	
	/**
	 * 设置备注
	 * @param remark 备注
	 */
	public void setRemark(String remark) {
		this.remark = remark;
	}

	/**
	 * 获取创建时间
	 * @return 创建时间
	 */
	public Date getCreateTime() {
		return createTime;
	}
	
	/**
	 * 设置创建时间
	 * @param createTime 创建时间
	 */
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	/**
	 * 获取创建用户ID
	 * @return 创建用户ID
	 */
	public String getCreateUserId() {
		return createUserId;
	}
	
	/**
	 * 设置创建用户ID
	 * @param createUserId 创建用户ID
	 */
	public void setCreateUserId(String createUserId) {
		this.createUserId = createUserId;
	}

	/**
	 * 获取修改时间
	 * @return 修改时间
	 */
	public Date getUpdateTime() {
		return updateTime;
	}
	
	/**
	 * 设置修改时间
	 * @param updateTime 修改时间
	 */
	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	/**
	 * 获取修改用户ID
	 * @return 修改用户ID
	 */
	public String getUpdateUserId() {
		return updateUserId;
	}
	
	/**
	 * 设置修改用户ID
	 * @param updateUserId 修改用户ID
	 */
	public void setUpdateUserId(String updateUserId) {
		this.updateUserId = updateUserId;
	}

	/**
	 * 获取扩展字段1
	 * @return 扩展字段1
	 */
	public String getColumn1() {
		return column1;
	}
	
	/**
	 * 设置扩展字段1
	 * @param column1 扩展字段1
	 */
	public void setColumn1(String column1) {
		this.column1 = column1;
	}

	/**
	 * 获取扩展字段2
	 * @return 扩展字段2
	 */
	public String getColumn2() {
		return column2;
	}
	
	/**
	 * 设置扩展字段2
	 * @param column2 扩展字段2
	 */
	public void setColumn2(String column2) {
		this.column2 = column2;
	}

	/**
	 * 获取扩展字段3
	 * @return 扩展字段3
	 */
	public String getColumn3() {
		return column3;
	}
	
	/**
	 * 设置扩展字段3
	 * @param column3 扩展字段3
	 */
	public void setColumn3(String column3) {
		this.column3 = column3;
	}

	/**
	 * 获取扩展字段4
	 * @return 扩展字段4
	 */
	public String getColumn4() {
		return column4;
	}
	
	/**
	 * 设置扩展字段4
	 * @param column4 扩展字段4
	 */
	public void setColumn4(String column4) {
		this.column4 = column4;
	}

	/**
	 * 获取扩展字段5
	 * @return 扩展字段5
	 */
	public String getColumn5() {
		return column5;
	}
	
	/**
	 * 设置扩展字段5
	 * @param column5 扩展字段5
	 */
	public void setColumn5(String column5) {
		this.column5 = column5;
	}
	
	/****************************** 自定义属性开始  *****************************/

	/**
	 * 角色列表
	 */
	@ApiModelProperty("角色列表")
	protected List<OrgRoleDataForm> roles = new ArrayList<OrgRoleDataForm>();

	public List<OrgRoleDataForm> getRoles() {
		return roles;
	}

	public void setRoles(List<OrgRoleDataForm> roles) {
		this.roles = roles;
	}

	/****************************** 自定义属性结束  *****************************/
}
